// -----------------------------
// Author: 		Dhaenens Gert 
// Creation: 	8/4/2013 8:58:27 PM				
// -----------------------------

#ifndef _LuaStackDump_h
#define _LuaStackDump_h

#include "LuaObject.h"

namespace ObjectLua
{

	class OBJECTLUA LuaStackDump : public LuaObject
	{
	public:
		static Lua*	s_lpLua;

		LuaStackDump();
		LuaStackDump(const LuaStackDump& refLuaStackDump);
		LuaStackDump& operator=(const LuaStackDump& refLuaStackDump);
		virtual ~LuaStackDump();

		/*
		//	Write out the Stack Dump
		//	to a file
		//	@ lpFilePath : File Path
		*/
		void	toFile(const char* lpFilePath);
	
	private:

	};

}

#define LUA_STACKDUMP(file) \
{ \
	ObjectLua::LuaStackDump stackDump; \
	stackDump.toFile(file); \
}

#endif